#ifndef _CONVERT_MANAGER_H
#define _CONVERT_MANAGER_H

#include <video_manager.h>

typedef struct ConvertOpr
{   
    char *name;
    int (*isSupport)(int InputPixelFormat, int OutputPixelFormat); // �Ƿ�֧�ָ�ʽת��
    int (*Convert)(PT_VideoBuff InputBuff, PT_VideoBuff outputBuff);
    int (*ConvertExit)(PT_VideoBuff outputBuff); // ת������֮�����buff
    struct ConvertOpr *ptNext;
    
}T_ConvertOpr, *PT_ConvertOpr;


void RegisterConvertOpr(PT_ConvertOpr ptConvertOpr);
void RegisterMjpeg2Rgb(void);
void RegisterRgb2Rgb(void);
void RegisterYuv2Rgb(void);
void RegisterAllConvertOpr(void);
void ShowConvertOprList(viod);
PT_ConvertOpr GetConvertOprByName(char *name);



#endif